// 用于启动服务，并且写接口
const express = require('express')
const cors = require("cors")
const app = express()

// 写接口
// app.请求方式('接口地址', '带有req、res参数的处理函数');
// app.get('/api/student', (req, res) => {});
// app.post();
// app.delete();
// app.put();


app.listen(3000, () => console.log('启动了'));


// 配置，接收请求体
app.use(express.urlencoded({ extended: true })); // 接收查询字符串格式请求体
//配置跨域
app.use(cors())


const { query, add, del, update, search_id, user } = require('./json-parser'); // 导入 处理JSON文件的模块

//获取图书
app.get('/api/getbooks', async (req, res) => {
    let data = await query();
    res.send({ status: 0, message: '获取图书成功', data });
})


//添加图书
app.post('/api/addbook', async (req, res) => {
    let row = req.body;
    let r = await add(row);
    if (r === undefined) {
        res.send({ status: 0, message: '添加成功' })
    }
})

//修改图书接口
app.put('/api/updatebook', async (req, res) => {
    let row = req.body;
    let r = await update(row);
    if (r === undefined) {
        res.send({ status: 0, message: '修改成功' })
    }
})


//删除图书接口(无法使用)
app.delete('/api/delbook', (req, res) => {
    let id = req.query.id;
    console.log("我是删除接口", id)
    del(id)
    res.send({ status: 0, message: '删除图书成功' })
});




//查询图书
//给出id，返回该ID图书详细信息
app.get('/api/search', async (req, res) => {
    //let data = await query();//拿到所有值
    //拿到传来的ID值
    let id = req.query.id;
    console.log("我是查询接口", id)
    let data = await search_id(id);

    res.send({ status: 0, message: '查询成功', data });

})

//查询图书
//根据给出的作者获取所有书籍
app.get('/api/user', async (req, res) => {
    let author = req.query.author;
    let data = await user(author);
    console.log("我输出data：", data)
    res.send({ status: 0, message: '查询成功', data });

})


